//////////////////////////////////
//	File:		InstructionState.h
//	Class:		SGP
//	Updated:	3/6/2012
//	Author:		Roc Myers
//////////////////////////////////
#pragma once

#include "GameState.h"
#include "BitmapFont.h"

class HowToPlayState : public GameState
{
private:
	// SINGLETON
	HowToPlayState(void);
	HowToPlayState(const HowToPlayState&);
	HowToPlayState& operator=(const HowToPlayState&);
	~HowToPlayState(void);

	// Asset IDs
	int FontID;
	int BGMID;
	int CursorID;
	int BackgroundID;
	int LeftID;
	int RightID;
	int UpID;
	int DownID;
	int EnterID;
	int EscID;
	int ShiftID;
	int DiceID;
	int TileSheet;
	int declineID;
	int acceptID;
	int errorID;
	int moveID;
	int PanelID;

	// Class Variables
	float	sfxVol;
	float	bgmVol;
	float	pan;
	int		Selection;
	bool	Reference;
	bool	Controls;
	bool	Gameplay;

	// arcade input bools
	bool arcadeEnter;
	bool arcadeEscape;
	bool arcadeUp;
	bool arcadeDown;
	bool arcadeLeft;
	bool arcadeRight;
	bool arcadeBackspace;
	bool arcadeShift;
	bool arcadePlus;
	bool arcadeMinus;
	bool arcadeP;

	// Bitmap Font
	CBitmapFont Font;

	// SINGLETON
	static HowToPlayState* pInstance;

public:
	static HowToPlayState* GetInstance(void);
	void DeleteInstance();

	// Inherited Functionality
	void Enter(void);	
	bool Input(void);	
	void Update(float fElapsedTime);	
	void Render(void);	
	void Exit(void);	

	void ArcadeInput();

};

